# Chatbots

Since language models are good at producing text, that makes them ideal for creating chatbots.
Aside from the base prompts/LLMs, an important concept to know for Chatbots is `memory`.
Most chat based applications rely on remembering what happened in previous interactions, which `memory` is designed to help with.

The following resources exist:
- [ChatGPT Clone](/docs/modules/agents/how_to/chatgpt_clone.html): A notebook walking through how to recreate a ChatGPT-like experience with LangChain.
- [Conversation Memory](/docs/modules/memory.html): A notebook walking through how to use different types of conversational memory.
- [Conversation Agent](/docs/modules/agents/agent_types/conversational_agent.html): A notebook walking through how to create an agent optimized for conversation.


Additional related resources include:
- [Memory Key Concepts](/docs/modules/memory.html): Explanation of key concepts related to memory.
- [Memory Examples](/docs/modules/memory/how_to_guides.html): A collection of how-to examples for working with memory.

More end-to-end examples include:
- [Voice Assistant](./voice_assistant.html): A notebook walking through how to create a voice assistant using LangChain.
